1. Field of the Invention
The present invention relates to an image processing system, and particularly, to a method and an apparatus for optimizing of motion estimation in a coding of motion picture.
2. Description of the Background Art
Recently, interests for multimedia application services through an ultrahigh speed internet and needs for moving picture service using an ADSL (Asymmetric Digital Subscribe Line) are increased. A high speed data communication and a telephone call can be made simultaneously using a telephone line according to the ADSL. Therefore, it is essential that a video codec (coder-decoder) of high speed is installed for moving picture service using the ADSL.
Generally, there are provided or accepted MPEG (Moving Picture Experts Group)-1, MPEG-2, and MPEG-4, and H.261, H.263, and H.26L as standards for coding a video such as moving picture or a stopped picture. The international standards described above are based on motions estimating of the video, and after that, transforming a picture signal in a space or time and quantizing the picture signal in order to code residual data according to the estimation, whereby the picture signal is coded.
FIG. 1 is a block diagram showing a structure of a moving picture coder according to the conventional art. As shown therein, the moving picture coder comprises: a coding select unit 101 for selecting I-frame (a first frame and a scene change frame) and P-frame (remained frame) of an input video signal; a DCT (Discrete Cosine Transform) unit 102 for transforming the frame to a discrete cosine; a quantization unit 103 for quantizing the coefficient of the transformed DCT; an entropy coder 107 for coding the quantized signal and a motion vector using a coding method such as a variable length coding; a rate controller 104 connected to the DCT unit 102 and a channel 108 for controlling transmission rate; a dequantization unit 104 for dequantizing the quantized signal; an inverse DCT unit 106 for transforming the dequantized signal to inverse discrete cosine; an adder 109 for adding previous video signal outputted from the motion estimation unit and the inverse discrete cosine transformed signal; a picture memory unit 110 for storing the added signals; a motion estimation unit 111 for estimating the motion from the input video signal and the signal stored in the picture memory unit 110; and a subtracter 112 for subtracting the estimated picture in the motion estimation unit 111 from a picture which is inputted next.
The moving picture coder according to the conventional art which is described above will be described as follows.
A first video signal and a scene change video signal (as frame unit) among the video signal are selected as I-frame, and remained signals are selected as P-frame. Therefore, the first video signal (I-frame) is discrete cosine transformed in the DCT unit 102, the transformed signal is quantized in the quantization unit 103, and the quantized signal is coded in the entropy coding unit 107 using a method such as the VLC (Variable Length Coding), and then, the signal is transmitted to the channel 108 with the motion vector. Also, the quantized signal is transformed to the original video signal through the dequantization unit 105 and the inverse DCT unit 106, and the signal is stored in the picture memory unit 110.
Herein, the motion estimation unit 111 estimates the motion by reading the stored video signal in the picture memory unit 110 as macro block unit, after that, outputs the estimated motion vector to the entropy coding unit 107. Also, the subtracter 112 finds a difference video signal between the estimate video signal and the input video signal through the subtraction between the next input video signal and the motion vector. The coding select unit 101 selects the subtracted video signal having the difference as the P-frame, and then the video signal is coded using same method as that of the I-frame and transmitted to the channel. That is, a video signal in which the input video signal inputted after the first (that is, P-frame) and the motion vector inputted from the motion estimation unit 111 are different from each other is discrete cosine transformed in the DCT unit 102, and the transformed video signal is quantized in the quantization unit 103 and coded using VLC, and then transmitted to the channel 108. Also, the quantized video signal is restored through the dequantization unit 105 and the inverse DCT unit 106. The restored video signal and the motion vector of the motion estimation unit 111 are added in the adder 109, and after that, these are transformed into a previous video signal and stored in the video memory 110. In addition, the motion estimation unit 111 estimates the motion using a video signal which is inputted next and the video signal stored in the memory 110 (previous video signal).
On the other hand, the motion estimation unit 111 includes an SAD (Sum of the Absolute Difference) calculation process which estimates a similarity grade between the present video signal and the previous video signal in a set searching area (a macro block of 16×16), and the calculating is expressed as follows.             SAD      ⁢              (                  x          ,          y                )              =                  ∑                              i            =            1                    ,                      j            =            1                                    16          ,          16                    ⁢              |                  original          -          decoded_previous                |              ,  x  ,      y    =          ±      15      
Herein, the SAD (x,y) designates accumulated estimate error in a searching area x,y, and a position (x,y) having the smallest SAD value is selected as a final motion vector. In addition, the SAD calculation is used in a halfpel motion estimating process, and therefore it is an important element which affects to the motion estimating process speed of the video codec (coder-decoder). Actually, a pure motion estimation, that is, SAD calculation takes 30% in the video codec (coder-decoder) in case of a CIF(common intermediate format).
However, as shown in FIG. 2, according to the moving picture coder of the conventional art, a speed of motion estimation is lowered because the SAD calculation is performed for all 256 searching pixels of the macro block unit of 16×16